package com.party.decoration.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.party.domain.DecorationProduct;
/**
 * 
 * @author Caizhf
 * @date 2017年6月22日下午6:18:07
 * @version v.0.1
 * @email 1115054416@qq.com 
 *
 * <p>Description:场地布置下面的商品 </p>
 *
 */
public interface DecorationProductMapper {

	Integer save(DecorationProduct dp);

	Integer deleteById(int dpid);

	DecorationProduct findById(int dpid);

	Integer updateById(DecorationProduct dp);

	int countListDecorationProductByDecorationId(int did);

	List<DecorationProduct> listDecorationProductByDecorationId(@Param("dpids") List<Integer> dpids);
	
	//分页预备对象
	/**
	 * 
	 * @param startIndex 起始页码
	 * @param pageSize   一页多少条
	 * @param did		decoration的id号码
	 * @param dcid		decorationproduct的id号码
	 * @param key		title的模糊值
	 * @return
	 */
	List<Integer> preparePage(@Param("startIndex")Integer startIndex, 
			@Param("pageSize")Integer pageSize, @Param("did")Integer did,@Param("dcid")Integer dcid,
			@Param("key")String key);

	int countListDecorationProductByCategoryId(int dcid);

	List<DecorationProduct> listDecorationProductByCategoryId(@Param("dpids")List<Integer> dpids);

	int countList(@Param("key")String key);
	
	/**
	 * 查询所有的或者按照标题模糊查询
	 * @param key 可为空，在mapper层做判断
	 * @param startIndex
	 * @param pageSize
	 * @return
	 */
	List<DecorationProduct> listDecorationProductOrByLikeTitle(@Param("dpids") List<Integer> dpids);

	Integer removeForeignKeyOnDecorationById(@Param("dpid")int dpid, @Param("state")Integer state);

}
